1
Thành thạo Điều khiển Luồng Nâng cao
AI019Lesson 6
00:00

Phép case biểu thức là nền tảng của luồng điều khiển trong Elixir. Khác với các câu lệnh switch kiểu mệnh lệnh, case nó là một biểu thức hàm trả về kết quả của nhánh khớp, giúp các nhà phát triển có thể phân tách cấu trúc dữ liệu phức tạp như bản đồ và bộ (tuple) ngay lập tức, đồng thời đảm bảo tính toàn vẹn của logic.

1. So khớp Mẫu & Gán Biến

Phép case biểu thức cho phép bạn kiểm tra một giá trị so với một tập hợp các mẫu. Nó thực thi mã liên quan đến mẫu đầu tiên khớp và trả về giá trị của đoạn mã đó. Bạn có thể gán biến bên trong quá trình khớp để sử dụng ngay lập tức trong logic nhánh.

case dave làm
%{state: some_state} = person ->
IO.puts "#{person.name} sống tại #{some_state}"
end

2. Luồng Logic Hình ảnh

Giá trịMẫu {:ok, val}Mẫu {:error, _}Mặc định _

3. Câu điều kiện Bảo vệ & Tính Toàn diện

Bằng cách sử dụng từ khóa when bạn có thể bổ sung các khớp cấu trúc bằng logic điều kiện (ví dụ như is_number(age) và age >= 21). Elixir yêu cầu phải có khớp cho mọi đầu vào tiềm năng; nếu không có mẫu nào khớp, một CaseClauseError sẽ được ném ra.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>